/**
 * 通用datagrid service模块，提供对datagrid的常用功能支持
 * 
 * @Date: 2015-6-16
 * @author: Jackson wang
 * @version: 1.0
 * @since: 1.0
 */
define(["jquery","msgServ","elServ"],function ($,msgServ,elServ) {

	'use strict';

	

	

	return {		

		/**
		 * 根据传入url在目标tab组件中创建href类型tab页
		 * 
		 * @param _options.target
		 *            目标tab组件对象
		 * @param _options.tabUrl
		 *            待添加的数据行
		 * @param _options.title
		 *            tab页标题
		 * @param _options.tools
		 *            工具栏按钮
		 * @param _options.container
		 *            目标datagrid对象的上级容器
		 * @return
		 * 
		 */
		addHrefTab : function(_options) {
			// 判断目标对象参数类型，获取目标对象
			var _target = elServ.getTarget(_options);
			// 判断目标对象是否为空
			if (_options.tabUrl != null && _target != null) {

				// 判断title是否为空
				if (_options.title != null) {
					if (!$(_target).tabs('exists', _options.title)) {

						// 判断待添加数据是否为空
						$(_target).tabs('add', {
							title : _options.title,
							closable : true,
							// border:false,
							// iconCls : nodes[1],
							href : _options.tabUrl,
							tools : _options.tools
								// tools : [ {
								// iconCls : 'icon-mini-refresh',
								// handler : function() {
								// refreshTab(nodes[0]);
								// }
								// } ]

							});
					} else {
						$(_target).tabs('select', _options.title);
						$.messager.progress('close');
					}

				}else{
					$.messager.progress('close');
				}

			}

		},

		/**
		 * 根据传入url在目标tab组件中创建frame类型tab页
		 * 
		 * @param _options.target
		 *            目标tab组件对象
		 * @param _options.tabUrl
		 *            待添加的数据行
		 * @param _options.title
		 *            tab页标题
		 * @param _options.tools
		 *            工具栏按钮
		 * @param _options.container
		 *            目标datagrid对象的上级容器
		 * @return
		 * 
		 */
		addFrameTab : function(_options) {
			// 判断目标对象参数类型，获取目标对象

			var _target = elServ.getTarget(_options);
			// 判断目标对象是否为空
			if (_options.tabUrl != null && _target != null) {
				
				if (!$(_target).tabs('exists', _options.title)) {
					// 判断待添加数据是否为空
					$(_target).tabs('add', {
						title : _options.title,
						closable : true,
						// border:false,
	//					iconCls : nodes[1],
						// href : 'error/error.jsp',
						content : "<iframe src="
								+ _options.tabUrl
								+ " frameborder=\"0\" style=\"border:0;width:100%;height:99.4%;\"></iframe>",
						tools : _options.tools
							// tools : [ {
							// iconCls : 'icon-mini-refresh',
							// handler : function() {
							// refreshTab(nodes[0]);
							// }
							// } ]
	
					});
				}else{
					$(_target).tabs('select', _options.title);
				}

			}

		}

	};

});